Puzzling Perimeter - 1

Move the blue spot.

B = 11 (slider from -5 to 20)
D = Point(yAxis)
c = Circle(D, B)
f = OrthogonalLine(D, yAxis)
E, F = Intersect(c, f)
D' = Rotate(D, 45°, E)
C = Point(yAxis)
g = OrthogonalLine(C, yAxis)
A = 9 (slider from -5 to 10)
α = Angle(D, E, D')
h = Ray(E, D')
G = Intersect(h, g)
d = Circle(G, A)
H = Intersect(d, g, 1)
i = OrthogonalLine(H, g)
I = Intersect(f, i)
k = Segment(G, C)
q1, d_1, i_1, h_1, c_1 = Polygon(D, I, H, C)
perim: c_1 + h_1 + i_1 + d_1
n = Segment(E, I)
p = Segment(G, H)
q = Segment(C, G)
q2, d_2, i_2, h_2, c_2 = Polygon(D, I, H, C)
l = Segment(E, G)
m = Segment(D, E)
β = Angle(H, G, E)
text1: "Perimeter =( " + (LaTeX[B]) + "+" + (LaTeX[n]) + ")+" + (LaTeX[i_1]) + "+(" + (LaTeX[A]) + "+" + (LaTeX[q]) + ")+" + (LaTeX[c_1]) + "=" + (LaTeX[perim]) + ""